iT邦幫忙

2023 iThome 鐵人賽

DAY 2
0
Modern Web

Angular 微前端實戰 module federation with nx monorepo系列 第 2

Day 2 實作Micro Frontend 的幾種方式

  • 分享至 

  • xImage
  •  

這篇來聊聊
目前在實現微前端架構上,有幾種方式

1. iframe

iframe應該是大家第一個想到的解法

優點

顯而易見的是優秀的隔離性,具備沙盒機制

缺點

缺點實在是多的數不完
包括不利於SEO、Dom事件冒泡無法傳遞到父層容器等等

簡而言之,稍微複雜的情境下,完全不推薦使用iframe

2. webcomponent

優點

Shadow DOM 將Dom封裝在一個隔離的作用域,確保不會與其他元件衝突。
自行定義元件,方便重複使用。

缺點

需要自行處理事件、狀態管理等等較為複雜

3. 動態加載JS

透過webpack設定去達成動態加載其他應用程式的JS來達成Micro Frontend
本次重點module federation就屬於這種方式
另外還有single-spa也是屬於此種,但與module federation設計解決的問題有些許差異

優點

各個application獨立建構且可共享模組

缺點

性能上與安全性需考量的較多
須小心各個模組間的依賴

未來如果在研究的過程有發現新的方式再補充上來
下集預告:目前常見的Micro Frontend Library介紹


上一篇
Day 1 前言 微前端 Micro Frontend 前世今生
下一篇
Day 3 常見的幾種Micro Frontend Library
系列文
Angular 微前端實戰 module federation with nx monorepo8
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言